/** 
 * @date 06/05/2013
 * @author Renet_Pourriau
 * @version 1.0
 */

package adresse;

import java.util.ArrayList;
import java.util.List;

import financier.Devise;


/**
 * This class represent Country
 */
public class PaysC {

	private String nomPays;

	private String languePrincipale;

	private Ville capital;

	private Devise monnaie;

	private List<Ville> villes;

	/**
	 * this is the constructor of country
	 * @param nomPays
	 * @param langue
	 */
	public PaysC(String nomPays, String langue) {
		this.setNomPays(nomPays);
		this.setLangue(langue);
		this.villes = new ArrayList<Ville>();
	}

	/**
	 * @return the nomPays
	 */
	public String getNomPays() {
		return nomPays;
	}

	/**
	 * @param nomPays
	 *            the nomPays to set
	 */
	public void setNomPays(String nomPays) {
		this.nomPays = nomPays;
	}

	/**
	 * @return the langue
	 */
	public String getLangue() {
		return languePrincipale;
	}

	/**
	 * @param langue
	 *            the langue to set
	 */
	public void setLangue(String langue) {
		this.languePrincipale = langue;
	}

	/**
	 * @return the capital
	 */
	public Ville getCapital() {
		return capital;
	}

	/**
	 * @param capital
	 *            the capital to set
	 */
	public void setCapital(Ville capital) {
		this.capital = capital;
	}

	/**
	 * @return the monnaie
	 */
	public Devise getMonnaie() {
		return monnaie;
	}

	/**
	 * @param monnaie
	 *            the monnaie to set
	 */
	public void setMonnaie(Devise monnaie) {
		this.monnaie = monnaie;
	}

	/**
	 * @return the list of villes
	 */
	public List<Ville> getVilles() {
		return villes;
	}

	/**
	 * @param villes
	 */
	public void addVilles(Ville ville) {
		this.villes.add(ville);
	}

	/**
	 * @return Information about Country (Non, Capital, langues, monnaie)
	 */
	public String getInfoPays() {
		String infoPays = "";
		infoPays += "Nom pays : " + this.getNomPays() + "\n";
		if (this.getCapital() != null) {
			infoPays += "Capital : " + this.getCapital().getNomVille() + "\n";
		}
		infoPays += "Langues parlées : " + this.getLangue() + "\n";
		if (this.getMonnaie() != null) {
			infoPays += "Monnaie : " + this.getMonnaie().getMonnaie() + "\n";
		}
		return infoPays;
	}

}